package com.tinem.platform.module.pojo.vo.pay;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;

/**
 * @author fzh
 * @version v1
 * @program: platform
 * @className OrdeReq
 * @description
 * @site
 * @company
 * @create 2021-10-29 13:47
 */
@Data
@ApiModel("下单请求参数")
public class OrdeCreateReq {

    @ApiModelProperty(name = "merchOrderOriId", value = "商户原始订单号;由商户网站生成,在商户网站后台查询该订单的订单号",required = true)
    private String merchOrderOriId ;

    @ApiModelProperty(name = "payUserEmail", value = "支付用户联系邮箱(邮箱与手机号中必填一个)",required = false)
    private String payUserEmail ;

    @ApiModelProperty(name = "payUserPhoneCountry", value = "支付用户联系手机国家",required = false)
    private String payUserPhoneCountry ;

    @ApiModelProperty(name = "payUserPhone", value = "支付用户联系手机(邮箱与手机号中必填一个)",required = false)
    private String payUserPhone ;

    @ApiModelProperty(name = "description", value = "订单描述",required = true)
    private String description ;

    @ApiModelProperty(name = "timeExpire", value = "交易结束时间;格式：YYYYMMDDHHMMSS。例如：20180731235959",required = true)
    private String timeExpire = "";

    @ApiModelProperty(name = "orderType", value = "支付方式")
    private String orderType = "0";

    @ApiModelProperty(name = "ifsUrl", value = "在内嵌支付iframe页面用到的css文件的url;(必须https)如果“order_type=3内嵌支付”，该字段可填；否则该字段为空。")
    private String ifsUrl = "";

    @ApiModelProperty(name = "merchOrderDate", value = "商户订单时间;格式：YYYYMMDDHHMMSS。例如：20180731235959",required = true)
    private String merchOrderDate ;

    @ApiModelProperty(name = "priceCurrency", value = "标价币种;具体支持的币种需要向销售确认")
    private String priceCurrency = "usd" ;

    @ApiModelProperty(name = "priceAmount", value = "标价金额;格式：保留两位小数的金额。例如：263.50",required = true)
    private BigDecimal priceAmount ;

    @ApiModelProperty(name = "ip", value = "持卡人的IP地址",required = true)
    private String ip ;

    @ApiModelProperty(name = "urlSync", value = "订单状态异步回调地址",required = true)
    private String urlSync ;

    @ApiModelProperty(name = "urlSuccBack", value = "成功订单返回地址;待处理状态的订单也返回该网址",required = true)
    private String urlSuccBack ;

    @ApiModelProperty(name = "urlFailBack", value = "失败订单返回地址",required = true)
    private String urlFailBack ;

    @ApiModelProperty(name = "urlOptChannel", value = "订单支付渠道选择回调地址",required = true)
    private String urlOptChannel ;

    @ApiModelProperty(name = "webSite", value = "订单发起网站",required = true)
    private String webSite ;

    @ApiModelProperty(name = "orderRemark", value = "订单备注;回传商户订单状态时，会包含该字段",required = false)
    private String orderRemark = "";

}
